package com.stx.crazyblog.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import com.stx.crazyblog.entity.Category;
import com.stx.crazyblog.util.JdbcUtil;

/*
 * 类别数据选择对象类（JDBC）
 * */
public class CategoryDao {
/*
 * 	根据查询信息列出类别对象的信息列表
 ***/
	public List<Category> queryCategory(Category categoryParams) throws Exception{
//		通过JdbcUtil中的获得连接驱动
		Connection connection = JdbcUtil.getConnection();
//		创建连接语句，进行连接数据库
		Statement stmt = connection.createStatement();
//		执行查询语句，查询类别表的内容
		ResultSet rs  = stmt.executeQuery("select * from tbl_category");
//		将类别表中的内容列表（用于查看多个分类表中的内容）
		List<Category> categoryList = new ArrayList<Category>();
//		创建类别表的视图
		while(rs.next()){
			Category category = new Category();
			
			category.setCid(rs.getString("ca_cid"));
			category.setCname(rs.getString("ca_cname"));
			category.setUid(rs.getString("us_uid"));
			category.setCreatetime(rs.getString("ca_createtime"));
			
			categoryList.add(category);
		}
//		释放数据库资源
		JdbcUtil.release();
//		返回category列表的值给servlet
		return categoryList;
	}
/*
 * 添加类别的方法
 * */	
	public int insertCategory(Category category)throws Exception{
//		从JdbcUtil中获得驱动
		Connection connection = JdbcUtil.getConnection();
//		设定并且执行SQL中的insert语句给类别表添加数据
		PreparedStatement ps = connection.prepareStatement(
				"insert into tbl_category(ca_cid,ca_cname,us_uid,ca_createtime) values(?,?,?,?)");
		
		ps.setString(1, category.getCid());
		ps.setString(2, category.getCname());
		ps.setString(3, category.getUid());
		ps.setString(4, category.getCreatetime());
		
		int count = ps.executeUpdate();
		return count;
		
	}
//	删除category类别表的方法（未完成）
	public boolean deleteCategory(String cid){
		return false;
		
	}
//	更新category类别表的方法（未完成）
	public boolean updateCategory(){
		return false;
		
	}
}
